﻿
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;

namespace SharpSoft.WPF
{
    /// <summary>
    /// 添加此转换器可以解决DateTime和Nullable<DateTime>无法绑定到JSON对象的问题
    /// </summary>
    //public class JTokenToDateTimeConverter : IValueConverter
    //{
    //    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    //    {
    //        if (value == null)
    //        {
    //            if (targetType == typeof(DateTime?))
    //            {
    //                return null;
    //            }
    //            return default(DateTime);
    //        }
    //        if (value is JToken)
    //        {
    //            var jval = (JToken)value;
    //            if (jval.Type == JTokenType.Date)
    //            {
    //                return jval.ToObject<DateTime>();
    //            }
    //            if (jval.Type== JTokenType.Null)
    //            {
    //                return default(DateTime);
    //            }
    //        }
    //        string str = value.ToString();
    //        DateTime dt;
    //        bool canconvert = DateTime.TryParse(str, out dt);
    //        if (canconvert)
    //        {
    //            return dt;
    //        }

    //        throw new Exception("指定的值不能转换为日期类型。");
    //    }

    //    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    //    {

    //        return value;
    //    }
    //}
}
